package com.naiterui.ehp.bp.domain;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * 系统公告主题表
 * @author linhf
 * @since 2.3.0
 */
@Entity
@Table(name = "cms_notice_topic")
public class NoticeTopic implements Serializable {

    /* 是否推送PUSH */
    /**
     * 是否推送PUSH-否：<code>NOTICE_TOPIC_WITHOUT_PUSH</code>
     */
    public static final int NOTICE_TOPIC_WITHOUT_PUSH = 0;
    /**
     * 是否推送PUSH-是：<code>NOTICE_TOPIC_WITH_PUSH</code>
     */
    public static final int NOTICE_TOPIC_WITH_PUSH = 1;
    /* 主题状态 */
    /**
     * 主题状态-有效：<code>NOTICE_STATUS_USELESS</code>
     */
    public static final int NOTICE_STATUS_USELESS = 0;
    /**
     * 主题状态-无效：<code>NOTICE_STATUS_USEFUL</code>
     */
    public static final int NOTICE_STATUS_USEFUL = 1;

    /**
     * 序列化ID：<code>serialVersionUID</code>
     */
    private static final long serialVersionUID = 1L;

    private Long id;// 序列id
    private String name;// 主题名称
    private String desc;// 主题简介
    private Integer status;// 主题状态，0-无效，1-有效
    private Integer isPush;// 是否推送push：0-否，1-是
    private String logoImg;// 主题logo图片
    private Date createdAt;// 创建时间
    private Date changedAt;// 变更时间
    private String createdBy;// 创建人
    private String changedBy;// 变更时间

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id", unique = true, nullable = false)
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    @Column(name = "name")
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Column(name = "desc")
    public String getDesc() {
        return desc;
    }

    public void setDesc(String desc) {
        this.desc = desc;
    }

    @Column(name = "status")
    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    @Column(name = "is_push")
    public Integer getIsPush() {
        return isPush;
    }

    public void setIsPush(Integer isPush) {
        this.isPush = isPush;
    }

    @Column(name = "logo_img")
    public String getLogoImg() {
        return logoImg;
    }

    public void setLogoImg(String logoImg) {
        this.logoImg = logoImg;
    }

    @Column(name = "created_at")
    public Date getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    @Column(name = "changed_at")
    public Date getChangedAt() {
        return changedAt;
    }

    public void setChangedAt(Date changedAt) {
        this.changedAt = changedAt;
    }

    @Column(name = "created_by")
    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    @Column(name = "changed_by")
    public String getChangedBy() {
        return changedBy;
    }

    public void setChangedBy(String changedBy) {
        this.changedBy = changedBy;
    }

}
